/cody/pratham0709/Striver-A-TO-Z-SDE-SHEET/Binary%20Search/BS%20on%201D%20Arrays/Search%20in%20Rotated%20Sorted%20Array%20II.cpp
class Solution {public: bool search(vector<int>& nums, int target) { int start = 0; int end = nums.size()-1;
while(start<=end){ int mid = start + (end - start) /2;
if(nums[mid] == target) return true; if(nums[start] == nums[mid] && nums[mid] == nums[end]){ start = start +1; end = end - 1; continue; }
if(nums[start] <= nums[mid]){ if(nums[start] <= target && target <= nums[mid]){ end = mid -1; } else{ start = mid + 1; } } else{ if(nums[mid] <= target && target <= nums[end]){ start = mid + 1; } else{ end = mid - 1; } } } return false; }};